#!/bin/bash

arr=(ads_alert_rule_efficiency ads_customer_risk_view ads_reg_compliance_monthly ads_transaction_risk_report)

# 日志存在这个路径下，有问题就打开这个文件看
sqoop_export_log="/root/aaa/program_2_hivesql/sqoop_export_log"

for i in "${arr[@]}"
do
    # 先打印提示：现在开始处理哪个表了
    echo "开始导出表: $i"

    sqoop export \
    --connect jdbc:oracle:thin:@192.168.4.184:1521:orcl \
    --username SCOTT \
    --password 123456 \
    --table "$i" \
    --export-dir /user/hive/warehouse/ads.db/"$i" \
    --input-fields-terminated-by '\001' \
    --input-lines-terminated-by '\n' \
    --input-null-string '\\N' \
    --input-null-non-string '\\N' \
    -m 1

    if [ $? -ne 0 ]; then
        # 如果失败：把“哪个表失败”写到日志里，然后退出脚本（不处理后面的表了）
        echo "$i 传输失败！请重新传输" >> $sqoop_export_log 2>&1
        exit
    else
        # 如果成功：把“哪个表成功”写到日志里，继续处理下一个表
        echo "$i 导出成功" >> $sqoop_export_log 2>&1
    fi
done

echo "所有表导出完成" >> $sqoop_export_log 2>&1